System, switch device and method of controlling a plurality of switch devices

ABSTRACT

A switch apparatus includes a first controller, a second controller, and a plurality of switch devices, the plurality of switch devices being configured to receive a packet and store a flow table which indicates a method of handling a process of the received packet, wherein the first controller informs a first content of the flow table to the plurality of switch devices, a first switch device detects a communication error between the first switch device and the first controller, the first switch device informs a second switch device of the communication error, and the second switch device changes a connecting destination from the first controller to the second controller.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority of theprior Japanese Patent Application No. 2015-085883, filed on Apr. 20,2015, the entire contents of which are incorporated herein by reference.

FIELD

The embodiment disclosed herein relates to a system, a switch device anda method of controlling a plurality of switch devices.

BACKGROUND

In recent years, OpenFlow is known as a technology that can performflexible packet transfer control that is not bounded by existing packettransfer or routing processing in which a known L2 switch, router or thelike is used. OpenFlow is a technology that includes an OpenFlowcontroller (OFC) and an OpenFlow switch (OFS) and in which the OFCcollectively manages route control and transfer control of a pluralityof OFSs. The OFC sets, to each OFS, a flow table including matchconditions for identifying a flow of a control target and informationthat defines a process to be execute such as, for example, transfer,disposal or field rewriting in the header for packets that satisfy thematch conditions. It is to be noted that the flow table is set freely byan operation administrator of a network or a user and is set dynamicallyand programmably to each OFS using the OpenFlow protocol. Each OFSrefers to the flow table to execute processing corresponding to areceived packet.

In OpenFlow, in order to avoid a network disorder arising from adisorder of the OFC, the OFC is made redundant using a primary OFC and asecondary OFC. For example, the primary OFC monitors and controls aplurality of OFSs, and the secondary OFC monitors and controls theplurality of OFSs when the primary OFC suffers from a disorder.Meanwhile, each OFS periodically executes keepalive with the OFC thatcontrols the own apparatus to detect a disorder of the OFC.

If each OFS detects a disorder of the primary OFC on the basis of aresult of the monitoring of keepalive, then it switches the primary OFCto the secondary OFC. As a result, each OFS can recover the primary OFCfrom the disorder.

As examples of a prior art, Japanese Laid-open Patent Publication No.2014-135614, Japanese Laid-open Patent Publication No. 2011-160363,Japanese Laid-open Patent Publication No. 2011-244095 and “OpenFlowSwitch Specification Version 1.4.0,” Oct. 14, 2013, OPEN NETWORKINGFOUNDATION are known.

SUMMARY

According to an aspect of the invention, a switch apparatus includes afirst controller, a second controller, and a plurality of switchdevices, the plurality of switch devices being configured to receive apacket and store a flow table which indicates a method of handling aprocess of the received packet, wherein the first controller informs afirst content of the flow table to the plurality of switch devices, afirst switch device included in the plurality of switch devices detectsa communication error between the first switch device and the firstcontroller, the first switch device informs a second switch deviceincluded in the plurality of switch devices of the communication errorbetween the first switch device and the first controller, and the secondswitch device changes a connecting destination from the first controllerto the second controller.

The object and advantages of the invention will be realized and attainedby means of the elements and combinations particularly pointed out inthe claims.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and arenot restrictive of the invention, as claimed.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 depicts an example of a communication system of an embodiment 1;

FIG. 2 depicts an example of a hardware configuration of an OFS;

FIG. 3 depicts an example of a functional configuration of an OFS;

FIG. 4 depicts an example of a functional configuration of an OFC;

FIG. 5 depicts an example of data topology information;

FIG. 6 depicts an example of control topology information;

FIG. 7 illustrates an example of operation of a communication system ofthe embodiment 1 upon detection of a disorder;

FIG. 8 is a flow chart illustrating an example of processing operationof a representative OFS relating to a first disorder detection process;

FIG. 9 is a sequence diagram illustrating an example of processingoperation of OFCs and OFSs of a communication system relating to a firstdisorder detection process;

FIG. 10 depicts an example of a functional configuration of an OFS in anembodiment 2;

FIG. 11 depicts an example of a functional configuration of an OFC inthe embodiment 2;

FIG. 12 is a flow chart illustrating an example of processing operationof a primary OFC relating to a selection process;

FIG. 13 depicts an example of operation upon failure in confirmationkeepalive of a sub representative OFS in a communication system of theembodiment 2;

FIG. 14 depicts an example of operation upon success in confirmationkeepalive of a sub representative OFS in a communication system of theembodiment 2;

FIG. 15 is a flow chart illustrating an example of processing operationof a sub representative OFS relating to a second disorder detectionprocess;

FIG. 16 depicts an example of operation upon failure in confirmationkeepalive of a sub representative OFS in a communication system of anembodiment 3;

FIG. 17 depicts an example of operation upon success in confirmationkeepalive of a sub representative OFS in a communication system of theembodiment 3;

FIG. 18 is a flow chart illustrating an example of processing operationof a representative OFS relating to a third disorder detection process;

FIG. 19 is a flow chart illustrating an example of processing operationof a sub representative OFS relating to a fourth disorder detectionprocess;

FIG. 20 is a flow chart depicting an example of processing operation ofa representative OFS relating to a confirmation response process; and

FIG. 21 depicts an example of a computer that executes a disorderdetection program.

DESCRIPTION OF EMBODIMENT

Each OFS executes keepalive with the primary OFC using a control plane.However, since the number of times of execution of keepalive by the OFCincreases as the number of OFSs that are monitored and controlled by theOFC increases, also the processing burden on the OFC which may berequired for keepalive increases. Besides, since keepalive isimplemented by message communication on the control plane between theOFS and the OFC, as the number of OFSs increases, messages transferredon the control plane congest, and also the communication load on thecontrol plane which may be required for keepalive increases.

According to one aspect, it is an object of the present invention toprovide a switch apparatus, a control apparatus, a disorder detectionmethod and a disorder detection program by which the communication loadon a control plane and the processing burden on an OFC side when the OFCis detected are suppressed.

In the following, embodiments of a switch apparatus, a controlapparatus, a disorder detection method and a disorder detection programdisclosed herein are described in detail with reference to theaccompanying drawings. It is to be noted that the disclosed technologyshall not be restricted by the embodiments. Further, the embodimentsdescribed below may be combined suitably without causing acontradiction.

Embodiment 1

FIG. 1 is an explanatory view depicting an example of a communicationsystem 1 of an embodiment 1. The communication system 1 of FIG. 1includes a plurality of OFSs 2, a plurality of OFCs 3, and a pluralityof switches (SWs) 4. The plurality of OFSs 2 include, for example, afirst OFS group 10A and a second OFS group 10B. The first OFS group 10Aincludes a first OFS 2A to a fifth OFS 2E, and the second OFS group 10Bincludes a sixth OFS 2F to a ninth OFS 2I. Each OFS 2 corresponds, forexample, to a switch apparatus. The plurality of OFCs 3 include a firstOFC 3A and a second OFC 3B. The first OFC 3A monitors and controls thefirst OFS 2A to the fifth OFS 2E in the first OFS group 10A. Meanwhile,the second OFC 3B monitors and controls the sixth OFS 2F to the ninthOFS 2I in the second OFS group 10B. Each OFC 3 corresponds, for example,to a control apparatus. The OFSs 2A to 2I are coupled to each otherusing a data plane 5 that is a first network and transmit and receive adata packet using the data plane 5.

The plurality of SWs 4 are, for example, layer 2 switches (L2 switches)and include a first SW 4A to a sixth SW 4F. Further, the first OFC 3A iscoupled to the first OFS 2A to the fifth OFS 2E in the first OFS group10A using the first SW 4A to the third SW 4C and a control plane 6.Meanwhile, the second OFC 3B is coupled to the sixth OFS 2F to the ninthOFS 2I in the second OFS group 10B using the fourth SW 4D to the sixthSW 4F and the control plane 6. The first OFC 3A and the second OFC 3Btransmit and receive a control message to and from the first OFS group10A and the second OFS group 10B using the control plane 6 that is asecond network.

In the first OFS group 10A, the first OFC 3A serves as a primary OFC 12Aand the second OFC 3B serves as a secondary OFC 12B, and in the secondOFS group 10B, the second OFC 3B serves as a primary OFC 12A and thefirst OFC 3A serves as a secondary OFC 12B. The primary OFC 12A is anOFC 3 that is used in a normal state, and the secondary OFC 12B is anOFC 3 that is used when the primary OFC 12A is disordered. The third OFS2C is determined as a representative OFS 11 in the first OFS group 10A,and the seventh OFS 2G is determined as a representative OFS 11 in thesecond OFS group 10B. The third OFS 2C periodically executes keepalivewith the first OFC 3A using the control plane 6 to monitor the disorderof the first OFC 3A. The seventh OFS 2G periodically executes keepalivewith the second OFC 3B using the control plane 6 to monitor the disorderof the second OFC 3B. In other words, since only the representative OFS11 executes keepalive with the primary OFC 12A, the process burden whichmay be required for the keepalive on the primary OFC 12A side and thecommunication burden when keepalive is executed on the control plane 6are suppressed.

FIG. 2 is a block diagram depicting an example of a hardwareconfiguration of the OFS 2. It is to be noted that, although a hardwareconfiguration of the OFS 2 is exemplified in FIG. 2 for the convenienceof description, since also the OFC 3 has a same hardware configuration,like elements are denoted by like reference symbols and overlappingdescription of the like elements and operation of them is omitted hereinto avoid redundancy. The OFS 2 depicted in FIG. 2 is a computer such as,for example, a general purpose server and includes an inputtingapparatus 21, an outputting apparatus 22, an auxiliary storage apparatus23, a drive apparatus 24, a network interface (NWIF) 25, a main storageapparatus 26, a processor 27 and a bus 28.

The inputting apparatus 21 is an input interface such as, for example, akeyboard or a pointing device such as a mouse. The outputting apparatus22 outputs a result of processing of the processor 27. The outputtingapparatus 22 is an output interface such as, for example, a soundoutputting apparatus such as a speaker and/or a display apparatus.

The auxiliary storage apparatus 23 is an area for storing variousprograms and data to be used by the processor 27 in execution of theprograms. The auxiliary storage apparatus 23 is a nonvolatile memorysuch as, for example, an erasable programmable read only memory (EPROM)or a hard disk drive. The auxiliary storage apparatus 23 retains variousapplication programs such as, for example, an operating system (OS).

The drive apparatus 24 reads out programs or various data recorded on aportable recording medium 24A and outputs the programs or the data tothe processor 27. The portable recording medium 24A is a recordingmedium such as, for example, a secure digital (SD) card, a mini SD card,a micro SD card, a universal serial bus (USB) flash memory, a compactdisc (CD), a digital versatile disc (DVD) or a flash memory card.

The NWIF 25 is a communication interface that administers communicationof information with an NW such as, for example, the data plane 5 or thecontrol plane 6. The NWIF 25 includes a communication interface thatcouples to a wire NW or a wireless NW. The NWIF 25 is, for example, anetwork interface card (NIC) or a wireless local area network (LAN)card.

The main storage apparatus 26 is a semiconductor memory such as, forexample, a random access memory (RAM) that corresponds to a storage areaor a working area of the processor 27 that loads a program stored in theauxiliary storage apparatus 23.

The processor 27 is, for example, a central processing unit (CPU) thatcontrols the entire OFS 2. The processor 27 loads the OS or variousapplication programs retained in the auxiliary storage apparatus 23 orthe portable recording medium 24A into the main storage apparatus 26 andexecutes the OS or the application programs to execute variousprocesses. The number of such processors 27 is not limited to one butmay be a plural number.

It is to be noted that, when data is inputted through the NWIF 25, theinputting apparatus 21 need not necessarily be provided. Similarly, whendata is outputted through the NWIF 25, the outputting apparatus 22 neednot necessarily be provided, for example, in the OFC 3 or the OFS 2.

FIG. 3 is a block diagram depicting an example of a functionalconfiguration of the OFS 2. The OFS 2 depicted in FIG. 3 includes astorage unit 31, a communication unit 32, a data processing unit 33, amessage processing unit 34, a switching processing unit 35 and adistribution unit 36. The storage unit 31 corresponds, for example, tothe auxiliary storage apparatus 23 and includes a flow table 31A, arepresentative table 31B and an OFC table 31C. The flow table 31A is atable in which flow information including match conditions foridentifying a flow of a control target and information that defines aprocess to be execute such as, for example, transfer, disposal or fieldrewriting in the header for packets of a flow that satisfies the matchconditions is stored. The flow table 31A may be set by reading in staticinformation retained in the auxiliary storage apparatus 23 or may be setdynamically on the basis of a Flow Mod message from the OFC 3.

The representative table 31B manages a representative identifier fordeciding whether or not the own apparatus is the representative OFS 11.It is to be noted that the representative OFS is, for example, the firstswitch apparatus. When the own apparatus is the representative OFS 11,the representative table 31B manages the representative identifier “1”but manages, when the own apparatus is not the representative OFS 11,the representative identifier “0.” It is to be noted that the substanceof the representative table 31B is set, for example, by setting inadvance, by an inputting operation of an administrator through theinputting apparatus 21 or by a selection instruction from the OFC 3.

The OFC table 31C manages information of the identifier, address and soforth of the primary OFC 12A and the secondary OFC 12B that monitor andcontrol the own apparatus.

The communication unit 32 corresponds, for example, to the NWIF 25 andtransmits and receives data packets using the data plane 5 that couplesto the other OFSs 2. The communication unit 32 transmits and receives anOpenFlow message using the control plane 6 coupling to the OFC 3.

The data processing unit 33 corresponds, for example, to a function ofthe processor 27, and refers to the substance of the flow table 31A,identifies a data packet received through the communication unit 32 andexecutes an action of the identified data packet. The data processingunit 33 includes a match decision unit 33A and an action execution unit33B. The match decision unit 33A refers to the flow information of theflow table 31A to decide whether or not a data packet satisfies thematch conditions. Further, the action execution unit 33B executes, whenthe data packet satisfies the match conditions, an action correspondingto the match conditions for the data packet.

The message processing unit 34 corresponds, for example, to a functionof the processor 27, and sets the substance of the flow table 31A on thebasis of a Flow Mod message from the OFC 3, and executes transmission ofa Packet-in message to the OFC 3 on the basis of a notification from thedata processing unit 33. The message processing unit 34 includes adecision unit 34A, a monitoring unit 34B, and a detection unit 34C. Thedecision unit 34A refers to the representative table 31B to decidewhether or not the own apparatus is the representative OFS 11. If theown apparatus is the representative OFS 11, then the monitoring unit 34Bexecutes keepalive of a short cycle with the primary OFC 12A. It is tobe noted that the keepalive is implemented by communication of an EchoRequest message (hereinafter referred to simply as Echo Request) and anEcho Reply message (hereinafter referred to simply as Echo Reply) withthe primary OFC 12A.

The detection unit 34C transmits an Echo Request for keepalive for eachtransmission cycle to the primary OFC 12A. Further, the detection unit34C starts up a reception waiting timer after transmission of the EchoRequest and decides that the primary OFC 12A is normal if the detectionunit 34C receives an Echo Reply from the primary OFC 12A before thereception waiting timer becomes up. Further, if the reception waitingtimer becomes up before an Echo Reply is received, then the detectionunit 34C increments the failure time number by +1. Then, when thefailure time number reaches a given time number, the detection unit 34Cdecides that the primary OFC 12A is in disorder, and notifies theswitching processing unit 35 of the disorder of the OFC 3.

The switching processing unit 35 corresponds, for example, to a functionof the processor 27 and includes a switching unit 35A, a transmissionunit 35B and a reception unit 35C. If the own apparatus is therepresentative OFS 11 and besides a disorder of the primary OFC 12A isdetected from the detection unit 34C, then the switching unit 35A refersto the OFC table 31C to execute switching operation of the OFC 3. Inparticular, the switching unit 35A switches the primary OFC 12A and thesecondary OFC 12B with each other, namely, switches the transmissioncontrol protocol (TCP) coupling and the secure channel of the ownapparatus to the secondary OFC 12B.

If a disorder of the primary OFC 12A is detected, then the transmissionunit 35B transmits, by flooding transmission, a disorder notificationmessage (hereinafter referred to simply as disorder notification)including the identifier of a disordered OFC 3 to the data plane 5through the communication unit 32. The reception unit 35C receives adisorder notification from a different OFS 2 using the data plane 5through the communication unit 32.

Meanwhile, if the own apparatus is not the representative OFS 11 andbesides a disorder notification is received from the representative OFS11 or a different OFS 2, then the switching unit 35A decides whether ornot the identifier of the disordered OFC 3 in the disorder notificationis the identifier of the primary OFC 12A of the own apparatus. If theidentifier of the disordered OFC 3 in the disorder notification is theidentifier of the primary OFC 12A of the own apparatus, then theswitching unit 35A switches the primary OFC 12A and the secondary OFC12B.

The distribution unit 36 identifies a packet type of a packet receivedthrough the communication unit 32 and transfers the received packet tothe data processing unit 33 if the received packet is a data packet. Onthe other hand, if the received packet is an OpenFlow message, then thedistribution unit 36 transfers the received packet to the messageprocessing unit 34.

FIG. 4 is a block diagram depicting an example of a functionalconfiguration of the OFC 3. The OFC 3 depicted in FIG. 4 includes astorage unit 41, a communication unit 42, a message processing unit 43,a coupling processing unit 44, a selection unit 45, an instruction unit46 and an identification unit 47. The storage unit 41 corresponds, forexample, to the auxiliary storage apparatus 23 and includes a flow table41A, a topology information table 41B and a control target OFS table41C.

The flow table 41A has flow information stored therein. The topologyinformation table 41B is a table for managing topology information suchas data topology information that is coupling topology on the data plane5 and control topology information that is coupling topology on thecontrol plane 6. It is to be noted that the topology information may beset by setting in advance, by an inputting operation by an administratorthrough the inputting apparatus 21, or by searching topology using, forexample, the link layer discovery protocol (LLDP).

FIG. 5 is an explanatory view depicting an example of data topologyinformation. Data topology information 51 depicted in FIG. 5 managescoupling topology on the data plane 5 among the OFSs 2 and manages aroute cost 51C in an associated relationship with each of the routesbetween a coupling source 51A and a coupling destination 51B.

FIG. 6 is an explanatory view depicting an example of control topologyinformation. Control topology information 52 depicted in FIG. 6 managescoupling topology on control topology, for example, between the OFSs 2and the OFCs 3, between the OFSs 2 and the SWs 4 and between the OFCs 3and the SWs 4 and manages a route cost 52C in an associated relationshipwith each route between a coupling source 52A and a coupling destination52B.

The control target OFS table 41C is a table for managing information ofthe identifier, address or the like for identifying an OFS 2 of acontrol target to be monitored and controlled by the own apparatus.Further, in the control target OFS table 41C, also whether or not therepresentative OFS 11 exists is managed for each OFS 2 of the controltarget in addition to and in association with the identifier and theaddress of the OFS 2 of the control target. The communication unit 42corresponds, for example, to the NWIF 25 and couples to the controlplane 6 to transmit and receive a message to be exchanged with an OFS 2.

The message processing unit 43 receives an OpenFlow message such as aPacket-in message from an OFS 2 through the communication unit 42 andtransmits an OpenFlow message such as a Flow Mod message or a Packet-outmessage to an OFS 2. The message processing unit 43 executes a processcorresponding to a received OpenFlow message. Further, the messageprocessing unit 43 includes a response processing unit 43A. The responseprocessing unit 43A returns, if an Echo Request is received, forexample, from the representative OFS 11, an Echo Reply to therepresentative OFS 11 through the communication unit 42.

The coupling processing unit 44 accepts a request from an OFS 2,confirms identification information of the OFS 2 of the control targetand establishes a secure channel with the OFS 2.

The selection unit 45 is a processor for selecting a representative OFS11 from within the control target OFS table 41C. The selection unit 45selects a representative OFS 11 on the basis of the topology informationsuch as the data topology information and the control topologyinformation from the control target OFS table 41C and stores theidentifier and the address of the selected representative OFS 11 intothe control target OFS table 41C. For example, the selection unit 45selects, on the basis of the control topology information, an OFS 2whose route cost on the control plane 6 to the primary OFC 12A is in theminimum as the representative OFS 11. Further, the instruction unit 46instructs the OFS 2 selected by the selection unit 45 of operationtransition of the representative OFS 11.

The identification unit 47 identifies a message received through thecommunication unit 42 and transfers, if the received message is anOpenFlow message from an OFS 2 on the basis of a result of theidentification, the received message to the message processing unit 43.On the other hand, if the received message is a message relating to arequest for TCP coupling or establishment of a secure channel, then theidentification unit 47 transfers the received message to the couplingprocessing unit 44.

Now, operation of the communication system 1 of the embodiment 1 isdescribed. FIG. 7 is an explanatory view illustrating an example ofoperation of the communication system 1 of the embodiment 1 upondetection of a disorder. It is to be noted that, for the convenience ofdescription, it is assumed that, in the first OFS group 10A of the firstOFS 2A to the fifth OFS 2E, the first OFC 3A serves as the primary OFC12A and the second OFC 3B serves as the secondary OFC 12B. Further, itis assumed that, in the second OFS group 10B of the sixth OFS 2F to theninth OFS 2I, the second OFC 3B serves as the primary OFC 12A and thefirst OFC 3A serves as the secondary OFC 12B. Also it is assumed that,in the first OFC 3A, the third OFS 2C serves as the representative OFS11 and, in the second OFC 3B, the seventh OFS 2G serves as therepresentative OFS 11.

Since the third OFS 2C serves as the representative OFS 11, the thirdOFS 2C executes keepalive with the first OFC 3A through the first SW 4Aand the third SW 4C on the control plane 6 (step S11). The third OFS 2Cdetects a disorder of the first OFC 3A on the basis of a result of thekeepalive with the first OFC 3A (step S12). If a disorder of the firstOFC 3A is detected, then the third OFS 2C transmits a disordernotification indicative of the disorder of the first OFC 3A by floodingtransmission to neighboring ones of the OFSs 2 using the data plane 5(step S13). Then, the third OFS 2C switches the primary OFC 12A from thefirst OFC 3A to the second OFC 3B using the control plane 6 (step S14).

Further, if a disorder notification is received from the third OFS 2C,then the second OFS 2B refers to the OFC table 31C. Then, since thefirst OFC 3A in the disorder notification is the primary OFC 12A of theown apparatus, the second OFS 2B transmits a disorder notification byflooding transmission to the neighboring OFSs 2 using the data plane 5(step S15). It is to be noted that also the first OFS 2A, fourth OFS 2Dand fifth OFS 2E similarly refer to the OFC table 31C and decide thatthe disordered OFC 3 in the disorder notification is the primary OFC 12Aof the own apparatus. Accordingly, the first OFS 2A, fourth OFS 2D andfifth OFS 2E transmit the disorder notification by flooding transmissionto neighboring ones of the OFSs 2 using the data plane 5 (step S16).Each of the OFSs 2 switches, if the first OFC 3A in the disordernotification is the primary OFC 12A in the own apparatus, the primaryOFC 12A from the first OFC 3A to the second OFC 3B (step S17).

It is to be noted that, since the primary OFC 12A of the own apparatusfor the sixth OFS 2F is the second OFC 3B, the identifier of thedisordered OFC 3 in the disorder notification from the fifth OFS 2E isdifferent from that of the primary OFC 12A of the own apparatus.Accordingly, the sixth OFS 2F suppresses transfer of the disordernotification from the fifth OFS 2E (step S18). It is to be noted that,although the case in which the fifth OFS 2E transmits a disordernotification by flooding transmission is exemplified in FIG. 7, since,in the first place, the sixth OFS 2F uses the second OFC 3B as theprimary OFC 12A, the fifth OFS 2E may be configured so as not totransfer the disorder notification to the sixth OFS 2F.

Further, since the seventh OFS 2G is the representative OFS 11, theseventh OFS 2G regularly executes keepalive with the second OFC 3B usingthe control plane 6.

FIG. 8 is a flow chart illustrating an example of processing operationof the representative OFS 11 relating to a first disorder detectionprocess. In the first disorder detection process depicted in FIG. 8, therepresentative OFS 11 executes keepalive with the primary OFC 12A andtransmits, when a disorder of the primary OFC 12A is detected, adisorder notification by flooding transmission and then switches theprimary OFC 12A to the secondary OFC 12B.

Referring to FIG. 8, the monitoring unit 34B in the representative OFS11 resets the failure time number of the Echo Reply (step S21) andtransmits an Echo Request for keepalive to the primary OFC 12A of theown apparatus using the control plane 6 (step S22). After thetransmission of the Echo Request, the detection unit 34C starts thereception waiting timer for the Echo Reply (step S23) and decideswhether or not an Echo Reply is received from the primary OFC 12A (stepS24). If an Echo Reply is received (Yes at step S24), then the detectionunit 34C decides that the primary OFC 12A is normal (step S25), therebyending the processing operation depicted in FIG. 8. As a result, therepresentative OFS 11 recognizes that the primary OFC 12A is normal.

If an Echo Reply is not received from the primary OFC 12A (No at stepS24), then the detection unit 34C decides whether or not the receptionwaiting timer for the Echo Reply is up (step S26). If the receptionwaiting timer is up (Yes at step S26), then the detection unit 34Cincrements the failure time number by +1 (step S27) and decides whetheror not the failure time number reaches a given time number (step S28).

If the failure time number reaches the given time number (Yes at stepS28), then the detection unit 34C decides that the primary OFC 12A is indisorder (step S29). As a result, the representative OFS 11 recognizesthe disorder of the primary OFC 12A. The transmission unit 35B in therepresentative OFS 11 transmits a disorder notification of the primaryOFC 12A by flooding transmission (step S30). Further, the switching unit35A in the representative OFS 11 executes switching operation of the OFC3 after the flooding transmission of the disorder notification (stepS31) and ends the processing operation depicted in FIG. 8. As a result,the representative OFS 11 performs recovery from the disorder byswitching the secondary OFC 12B to the primary OFC 12A.

On the other hand, if the reception waiting timer is not up (No at stepS26), then the detection unit 34C advances its processing to step S24 inorder to decide whether or not an Echo Reply is received from theprimary OFC 12A. If the failure time number does not reach the giventime number (No at step S28), then the monitoring unit 34B advances theprocessing to step S22 in order to transmit the Echo Request to theprimary OFC 12A again.

The representative OFS 11 that executes the first disorder detectionprocess depicted in FIG. 8 executes keepalive with the primary OFC 12A.As a result, the processing burden which may be required for thekeepalive on the primary OFC 12A side and the communication load on thecontrol plane 6 which may be required for the keepalive are suppressed.

If the representative OFS 11 receives an Echo Reply before the receptionwaiting timer becomes up, then the representative OFS 11 decides thatthe primary OFC 12A is normal. As a result, the representative OFS 11recognizes that the primary OFC 12A is normal.

If the failure time number reaches the given time number, then therepresentative OFS 11 decides that the primary OFC 12A is in disorder.As a result, the representative OFS 11 recognizes the disorder of theprimary OFC 12A.

If the representative OFS 11 detects a disorder of the primary OFC 12A,then the representative OFS 11 transmits a disorder notificationincluding the identifier for identifying the disordered primary OFC 12Aby flooding transmission. As a result, the representative OFS 11 informsthe other OFSs 2 of occurrence of the disorder of the primary OFC 12A.

Further, if each OFS 2 receives the disorder notification, then the OFS2 compares the identifier of the primary OFC 12A of the disordernotification and the identifier of the primary OFC 12A, by which the ownapparatus is controlled, with each other to decide whether or not theprimary OFC 12A of the own apparatus is in disorder. Further, if the OFS2 decides that the primary OFC 12A of the own apparatus is in disorder,then the OFS 2 transmits the disorder notification to the neighboringOFSs 2 by flooding transmission. As a result, each OFS 2 informs thedisorder of the primary OFC 12A of the own apparatus. Further, if eachOFS 2 decides that the primary OFC 12A of the own apparatus is indisorder, then the OFS 2 switches from the primary OFC 12A to thesecondary OFC 12B to recover the OFC 3, which monitors and controls theown apparatus, from the disorder.

On the other hand, if the received disorder notification does notindicate a disorder of the primary OFC 12A of the own apparatus, theneach OFS 2 suppresses transfer of the disorder notification. As aresult, the OFS 2 suppresses the communication load on the control plane6 by avoiding transfer of a useless disorder notification relating tothe components other than the primary OFC 12A of the own apparatus.

FIG. 9 is a sequence diagram illustrating an example of processingoperation of the OFSs 2 and the OFCs 3 of the communication system 1relating to the first disorder detection process. It is to be noted thatthe third OFS 2C serves as the representative OFS 11; the first OFC 3Aserves as the primary OFC 12A; and the second OFC 3B serves as thesecondary OFC 12B.

The third OFS 2C of the representative OFS 11 transmits an Echo Requestto the first OFC 3A in order to execute keepalive with the first OFC 3A(step S41). When the Echo Request is received, the first OFC 3A returnsan Echo Reply to the third OFS 2C (step S42). Here, it is assumed that adisorder occurs with the first OFC 3A now (step S43). At this time, thethird OFS 2C transmits an Echo Request to the first OFC 3A at a nextexecution timing of keepalive (step S44). However, since the first OFC3A suffers from a disorder, it is difficult for the first OFC 3A toreturn an Echo Reply to the Echo Request to the third OFS 2C. As aresult, it is difficult for the third OFS 2C to receive an Echo Reply tothe Echo Request and the third OFS 2C comes to detect a disorder of thefirst OFC 3A (step S45).

When the third OFS 2C detects the disorder of the first OFC 3A, thethird OFS 2C transmits a disorder notification for the notification ofthe disorder of the first OFC 3A by flooding transmission to the firstOFS 2A, second OFS 2B, fourth OFS 2D and fifth OFS 2E (step S46). Then,since the disorder of the first OFC 3A has been detected, the third OFS2C switches the primary OFC 12A from the first OFC 3A to the second OFC3B (step S47). Since the first OFS 2A, second OFS 2B, fourth OFS 2D andfifth OFS 2E have received the disorder notification of the disorder ofthe first OFC 3A, they execute switching operation of the OFC 3 from thefirst OFC 3A to the second OFC 3B (step S48), thereby ending theprocessing operation depicted in FIG. 9.

In the embodiment 1, only the representative OFS 11 regularly executeskeepalive with the primary OFC 12A and transmits, when a disorder of theprimary OFC 12A is detected on the basis of a result of the keepalive, adisorder notification to the other OFSs 2 by flooding transmission. Inorder words, by restricting the keepalive with the primary OFC 12A tothe representative OFS 11, the processing load on the primary OFC 12Aside which may be required for the keepalive and the communication loadwhich may be required for the keepalive on the control plane 6 aresuppressed.

If the representative OFS 11 detects a disorder of the primary OFC 12A,then the representative OFS 11 switches the primary OFC 12A to thesecondary OFC 12B. Further, if each OFS 2 receives a disordernotification, then if the identifier of the disordered OFC 3 in thedisorder notification is the identifier of the primary OFC 12A of theown apparatus, then the OFS 2 switches the primary OFC 12A to thesecondary OFC 12B. As a result, also when a disorder is detected in theprimary OFC 12A, the OFC 3 that controls the own apparatus is recoveredfrom the disorder by switching from the primary OFC 12A to the secondaryOFC 12B.

It is to be noted that, if the representative OFS 11 in the embodiment 1detects a disorder of the primary OFC 12A, then the representative OFS11 transmits a disorder notification by flooding transmission. However,the transmission is not limited to the flooding transmission, but thetable may be set such that an OFS or OFSs 2 to which a disordernotification is to be transmitted are set in advance and a disordernotification is issued only to the set OFS or OFSs 2.

In the embodiment 1 described above, it is a typical cause of failure inkeepalive of the representative OFS 11 that the primary OFC 12A itselfsuffers from a disorder and it is difficult for the primary OFC 12A toreturn an Echo Reply as described hereinabove. However, as anothercause, although the primary OFC 12A is not in disorder, a link on thecontrol plane 6 or a SW 4 between the primary OFC 12A and therepresentative OFS 11 may possibly be disordered. Also in this case,since it is originally difficult for the Echo Request from therepresentative OFS 11 to reach the primary OFC 12A and it is difficultfor the representative OFS 11 to receive an Echo Reply similarly, therepresentative OFS 11 comes to decide that the primary OFC 12A is indisorder.

However, a disorder of the primary OFC 12A itself and link down on thecontrol plane 6 may be isolated from each other. In this case, anembodiment in which a sub representative OFS is provided in addition tothe representative OFS 11 to isolate causes of occurrence of a disorderfrom each other is described below as an embodiment 2.

Embodiment 2

FIG. 10 is a block diagram depicting an example of a functionalconfiguration of an OFS 2X of the embodiment 2. It is to be noted thatlike elements to those of the OFS 2 of the embodiment 1 depicted in FIG.3 are denoted by like reference symbols, and overlapping description ofthe elements and operation of them is omitted.

A communication system 1A of the embodiment 2 is different from thecommunication system 1 of the embodiment 1 in that the communicationsystem 1A includes a sub representative OFS 13 depicted in FIG. 13 inaddition to the representative OFS 11. It is to be noted that the subrepresentative OFS 13 corresponds, for example, to a second switchapparatus. Further, the OFS 2X depicted in FIG. 10 is different from theOFS 2 depicted in FIG. 3 in that the OFS 2X has a representative table31D built therein. The representative table 31D manages a representativeidentifier for identifying whether the own apparatus is therepresentative OFS 11, the sub representative OFS 13 or any other OFS.In the representative table 31D, where the own apparatus is therepresentative OFS 11, the representative identifier is “1”; where theown apparatus is the sub representative OFS 13, the representativeidentifier is “2”; and where the own apparatus is an OFS 2 other thanthe representative OFS 11 and the sub representative OFS 13, therepresentative identifier is “0.”

The decision unit 34A refers to the representative table 31D to decidewhether or not the own apparatus is the representative OFS 11 and decidewhether or not the own apparatus is the sub representative OFS 13. Themonitoring unit 34B in the sub representative OFS 13 executes, when theown apparatus is the sub representative OFS 13 and receives a disordernotification of the primary OFC 12A through the reception unit 35C,confirmation keepalive for the primary OFC 12A. It is to be noted thatthe confirmation keepalive is a kind of keepalive that is executedbetween the sub representative OFS 13 and the primary OFC 12A. Themonitoring unit 34B in the sub representative OFS 13 transmits an EchoRequest for confirmation keepalive to the primary OFC 12A. The detectionunit 34C in the sub representative OFS 13 starts up the receptionwaiting timer for the Echo Reply after the transmission of the EchoRequest, and decides, if the detection unit 34C receives an Echo Replyfrom the primary OFC 12A before the reception waiting timer becomes up,that the confirmation keepalive results in success. On the other hand,if the reception waiting timer becomes up before an Echo Reply isreceived, the detection unit 34C increments the failure time number by+1. Then, if the failure time number reaches a given time number, thenthe detection unit 34C decides that the confirmation keepalive resultsin failure and notifies the switching processing unit 35 of the disorderof the OFC 3. If the transmission unit 35B in the sub representative OFS13 decides that the confirmation keepalive results in failure, then thetransmission unit 35B notifies the OFS 2, to which a disordernotification has not been transmitted, of a disorder notificationindicative of the disorder of the primary OFC 12A.

FIG. 11 is a block diagram depicting an example of a functionalconfiguration of an OFC 3X in the embodiment 2. It is to be noted that,like elements to those of the OFC 3 of the embodiment 1 depicted in FIG.4 are denoted by like reference symbols and overlapping description ofthe like elements and operation of them is omitted herein to avoidredundancy. The OFC 3X depicted in FIG. 11 is different from the OFC 3depicted in FIG. 4 in that the OFC 3X manages the identifier and theaddress of the sub representative OFS 13 in addition to the identifierand the address of the representative OFS 11 in a control target OFStable 41D. In the control target OFS table 41D, also whether or notthere exist a representative OFS 11 and a sub representative OFS 13 ismanaged for each OFS 2 of the control target in an associatedrelationship in addition to the identifier and the address of the OFSs 2of the control target.

The selection unit 45 extracts a pair of neighboring OFSs 2 from thecontrol target OFS table 41D. It is to be noted that the selection unit45 extracts, for example, on the basis of the control topologyinformation, a pair of OFSs 2 that are small in the hop number on thecontrol plane 6 to the primary OFC 12A or in the distance to the primaryOFC 12A. Alternatively, the selection unit 45 extracts, on the basis ofthe data topology information, a pair of OFSs 2 at or in theneighborhood of the center of all OFSs 2 on the data plane 5. Theselection unit 45 checks, on the basis of the control topologyinformation, a route from the extracted pair of OFSs 2 to the primaryOFC 12A and selects the pair of OFSs 2 that have different routes as therepresentative OFS 11 and the sub representative OFS 13. It is to benoted that the selection unit 45 may select, from between the pairedOFSs 2, for example, the OFS 2 whose route hop number is smaller fromthe primary OFC 12A as the representative OFS 11. The instruction unit46 instructs one and the other of the pair of OFSs 2 selected by theselection unit 45 to operate as the representative OFS 11 and the subrepresentative OFS 13, respectively.

Operation of the communication system 1A of the embodiment 2 isdescribed below. FIG. 12 is a flow chart illustrating an example ofprocessing operation of the primary OFC 12A relating to a selectionprocess. The selection process depicted in FIG. 12 is a process forselecting the representative OFS 11 and the sub representative OFS 13from a plurality of pairs of OFSs 2 in the control target OFS table 41D.

Referring to FIG. 12, the selection unit 45 in the primary OFC 12Aextracts OFSs 2 of the control target from the control target OFS table41D (step S131). The selection unit 45 extracts pairs of OFSs 2 on thebasis of the data topology information from among the extracted OFSs 2of the control target (step S132). The selection unit 45 extracts a pairof OFSs 2, which couples to the own apparatus through different routes,from among the extracted pairs of OFSs 2 on the basis of the controltopology information (step S133).

Further, the selection unit 45 selects one of the extracted pair of OFSs2 as the representative OFS 11 and selects the other as the subrepresentative OFS 13 (step S134). The instruction unit 46 instructs theselected one OFS 2 to operate as the representative OFS 11 and instructsthe other OFS 2 to operate as the sub representative OFS 13 (step S135),thereby ending the processing operation depicted in FIG. 12. As aresult, the primary OFC 12A selects the representative OFS 11 and thesub representative OFS 13 from among the OFSs 2 of the control target.

FIG. 13 is an explanatory view depicting an example of operation uponfailure in confirmation keepalive of the sub representative OFS 13 inthe communication system 1A of the embodiment 2, and FIG. 14 is anexplanatory view depicting an example of operation upon success inconfirmation keepalive of the sub representative OFS 13 in thecommunication system 1A of the embodiment 2. It is to be noted that, forthe convenience of description, it is assumed that the first OFC 3Aserves as the primary OFC 12A; the third OFS 2C serves as therepresentative OFS 11; and the second OFS 2B serves as the subrepresentative OFS 13.

Referring to FIG. 13, the third OFS 2C serving as the representative OFS11 executes keepalive for the first OFC 3A using the control plane 6through the first SW 4A and the third SW 4C (step S51). Further, if adisorder of the first OFC 3A is detected on the basis of a result of thekeepalive (step S52), then the third OFS 2C transmits a disordernotification representative of the disorder of the first OFC 3A byflooding transmission using the data plane 5 (step S53). In other words,the third OFS 2C issues a disorder notification to the second OFS 2B,fourth OFS 2D and fifth OFS 2E. As a result, the third OFS 2C, fourthOFS 2D and fifth OFS 2E execute OFC switching operation for switchingthe primary OFC 12A to the second OFC 3B and switching the secondary OFC12B to the first OFC 3A.

If the second OFS 2B serving as the sub representative OFS 13 receives adisorder notification from the third OFS 2C, then the second OFS 2Bexecutes confirmation keepalive for the first OFC 3A using the controlplane 6 through the first SW 4A and the second SW 4B (step S54).Further, if the second OFS 2B detects a failure of the confirmationkeepalive (step S55), then the second OFS 2B notifies the OFS 2, whichhas not been notified of the notification of the disorder, of a disordernotification representative of the disorder of the first OFC 3A itselfusing the data plane 5 (step S56). In other words, the second OFS 2Bnotifies the first OFS 2A, which has not been notified of thenotification of the disorder, of the disorder notification. As a result,the second OFS 2B and the first OFS 2A execute OFC switching operationfor switching the primary OFC 12A to the second OFC 3B and switching thesecondary OFC 12B to the first OFC 3A.

In FIG. 14, the third OFS 2C executes keepalive for the first OFC 3Ausing the control plane 6 through the first SW 4A and the third SW 4C(step S61). Further, if a disorder of the first OFC 3A is detected onthe basis of a result of the keepalive (step S62), then the third OFS 2Ctransmits a disorder notification indicative of the disorder of thefirst OFC 3A by flooding transmission using the data plane 5 (step S63).In other words, the third OFS 2C notifies the second OFS 2B, fourth OFS2D and fifth OFS 2E of the disorder notification. As a result, the thirdOFS 2C, fourth OFS 2D and fifth OFS 2E execute OFC switching operationfor switching the primary OFC 12A to the second OFC 3B and switching thesecondary OFC 12B to the first OFC 3A.

If the second OFS 2B serving as the sub representative OFS 13 receivesthe disorder notification from the third OFS 2C, then the second OFS 2Bexecutes confirmation keepalive for the first OFC 3A using the controlplane 6 through the first SW 4A and the second SW 4B (step S64).Further, if a success of the confirmation keepalive is detected (stepS65), then the second OFS 2B decides that the disorder does not indicatea disorder of the first OFC 3A itself but indicates link down on thecontrol plane 6.

The second OFS 2B decides that the first OFC 3A is normal. As a result,the first OFS 2A and the second OFS 2B maintain the first OFC 3A as theprimary OFC 12A.

In the case of FIG. 14, since the first OFC 3A itself does not sufferfrom a disorder but the disorder is link down between the first SW 4Aand the third SW 4C on the control plane 6, the confirmation keepaliveexecuted by the sub representative OFS 13 results in success.Accordingly, the sub representative OFS 13 decides that the disorder isnot a disorder of the primary OFC 12A itself but is link down on thecontrol plane 6 between the third OFS 2C serving as the representativeOFS 11 and the first OFC 3A. Further, since there is no influence on thecoupling between the first and second OFSs 2A and 2B and the first OFC3A, the sub representative OFS 13 does not execute switching to thesecondary OFC 12B and disorder notification to the first OFS 2A.

FIG. 15 is a flow chart illustrating an example of processing operationof the sub representative OFS 13 relating to a second disorder detectionprocess. The second disorder detection process depicted in FIG. 15 is aprocess of executing, when a disorder notification from therepresentative OFS 11 is detected, confirmation keepalive for theprimary OFC 12A from the sub representative OFS 13. It is to be notedthat the representative OFS 11 executes the first disorder detectionprocess depicted in FIG. 8 in order to execute keepalive with theprimary OFC 12A.

Referring to FIG. 15, the reception unit 35C in the sub representativeOFS 13 decides whether or not a disorder notification is received usingthe data plane 5 (step S71). If a disorder notification is received (Yesat step S71), then the sub representative OFS 13 decides whether or notthe OFC 3 of the disorder notification is the primary OFC 12A of the ownapparatus (step S72).

If the OFC 3 of the disorder notification is the primary OFC 12A of theown apparatus (Yes at step S72), then the monitoring unit 34B in the subrepresentative OFS 13 resets the failure time number for the Echo Reply(step S73). The monitoring unit 34B transmits an Echo Request for theconfirmation keepalive to the primary OFC 12A of the own apparatus usingthe control plane 6 (step S74). The detection unit 34C in the subrepresentative OFS 13 starts, after the transmission of the EchoRequest, the reception waiting timer for the Echo Reply (step S75) anddecides whether or not an Echo Reply is received from the primary OFC12A (step S76). If an Echo Reply is received (Yes at step S76), then thedetection unit 34C decides that the confirmation keepalive results insuccess (step S77), thereby ending the processing operation depicted inFIG. 15.

On the other hand, if an Echo Reply is not received from the primary OFC12A (No at step S76), then the detection unit 34C decides whether or notthe reception waiting timer is up (step S78). If the reception waitingtimer is up (Yes at step S78), then the detection unit 34C incrementsthe failure time number by +1 (step S79) and decides whether or not thefailure time number reaches a given time number (step S80).

If the failure time number reaches the given time number (Yes at stepS80), then the detection unit 34C decides that the confirmationkeepalive results in failure (step S81). If it is decided that theconfirmation keepalive results in failure, then the transmission unit35B transmits a disorder notification of the primary OFC 12A by floodingtransmission (step S82). Further, after the flooding transmission of thedisorder notification, the switching unit 35A executes OFC switchingoperation (step S83), thereby ending the processing operation depictedin FIG. 15.

If the reception waiting timer is not up (No at step S78), then thedetection unit 34C advances the processing to step S76 in order todecide whether or not an Echo Reply is received from the primary OFC12A. If the failure time number does not reach the given time number (Noat step S80), then the monitoring unit 34B advances its processing tostep S74 in order to transmit an Echo Request for confirmation keepaliveto the primary OFC 12A again.

If a disorder notification is not received (No at step S71), then thereception unit 35C ends the processing operation depicted in FIG. 15. Onthe other hand, if the detection unit 34C decides that the OFC 3 of thedisorder notification is not the primary OFC 12A of the own apparatus(No at step S72), then the processing operation depicted in FIG. 15 isended.

If the sub representative OFS 13 that executes the second disorderdetection process depicted in FIG. 15 receives a disorder notificationfrom the representative OFS 11, then the sub representative OFS 13executes confirmation keepalive with the primary OFC 12A. If the subrepresentative OFS 13 receives an Echo Reply before the receptionwaiting timer becomes up, then the sub representative OFS 13 decidesthat the confirmation keepalive results in success. As a result, the subrepresentative OFS 13 recognizes that the disorder is not a disorder ofthe primary OFC 12A itself but is link down of the control plane 6.

If the failure time number reaches the given time number, then the subrepresentative OFS 13 decides that confirmation keepalive results infailure. As a result, the sub representative OFS 13 confirms occurrenceof a disorder in the primary OFC 12A itself.

If the sub representative OFS 13 decides that the confirmation keepaliveresults in failure, then the sub representative OFS 13 transmits adisorder notification including the identifier for identifying thedisordered primary OFC 12A by flooding transmission. As a result, theOFSs 2 neighboring with the sub representative OFS 13 recognize theoccurrence of the disorder in the primary OFC 12A.

In the embodiment 2, not only the representative OFS 11 but also the subrepresentative OFS 13 are selected taking topology information of thedata plane 5 and the control plane 6 into consideration, and when adisorder notification is received from the representative OFS 11, thesub representative OFS 13 executes confirmation keepalive. Then, if theconfirmation keepalive results in failure, then the sub representativeOFS 13 decides that the disorder is a disorder of the primary OFC 12Aitself. As a result, the sub representative OFS 13 confirms the disorderof the primary OFC 12A itself.

On the other hand, if the confirmation keepalive results in success,then the sub representative OFS 13 decides that the disorder is not adisorder of the primary OFC 12A itself but is link down on the controlplane 6. As a result, the sub representative OFS 13 identifies not adisorder of the primary OFC 12A itself but link down on the controlplane 6.

If the representative OFS 11 in the embodiment 2 detects a disorder ofthe primary OFC 12A, then the representative OFS 11 executesconfirmation keepalive from the sub representative OFS 13 to the primaryOFC 12A after flooding transmission of a disorder notification. However,after a result of the confirmation keepalive of the sub representativeOFS 13, the representative OFS 11 may transmit a disorder notificationon the basis of the result of the confirmation from the subrepresentative OFS 13. An embodiment in this case is described below asan embodiment 3. It is to be noted that like elements to those of thecommunication system 1A of the embodiment 2 are denoted by likereference symbols, and overlapping description of the elements andoperation of them is omitted.

Embodiment 3

A communication system 1B of the embodiment 3 is different from thecommunication system 1A of the embodiment 2 in that, when therepresentative OFS 11 detects a disorder of the primary OFC 12A, therepresentative OFS 11 requests the sub representative OFS 13 to confirmkeepalive and transmits a disorder notification on the basis of a resultof the confirmation. In other words, when the representative OFS 11detects a disorder of the primary OFC 12A, the representative OFS 11does not transmit a disorder notification by flooding transmissionimmediately but requests the sub representative OFS 13 for confirmation.

Now, operation of the communication system 1B of the embodiment 3 isdescribed. FIG. 16 is an explanatory view depicting an example ofoperation upon failure in confirmation keepalive of the subrepresentative OFS 13 in the communication system 1B of the embodiment3. Meanwhile, FIG. 17 is an explanatory view depicting an example ofoperation upon success in confirmation keepalive of the subrepresentative OFS 13 in the communication system 1B of the embodiment3. It is to be noted that, for the convenience of description, it isassumed that the first OFC 3A serves as the primary OFC 12A; the thirdOFS 2C serves as the representative OFS 11; and the second OFS 2B servesas the sub representative OFS 13.

Referring to FIG. 16, the third OFS 2C serving as the representative OFS11 executes keepalive for the first OFC 3A using the control plane 6through the first SW 4A and the third SW 4C (step S51). Further, if thethird OFS 2C detects a disorder of the first OFC 3A on the basis of aresult of the keepalive (step S52), then the third OFS 2C notifies thesecond OFS 2B serving as the sub representative OFS 13 of a confirmationrequest using the data plane 5 (step S53A). It is to be noted that thethird OFS 2C explicitly sets an output port to the sub representativeOFS 13 in order to notify the sub representative OFS 13 of aconfirmation request.

If the second OFS 2B receives the confirmation request, then it executesconfirmation keepalive for the first OFC 3A using the control plane 6through the first SW 4A and the second SW 4B (step S54A). Further, ifthe second OFS 2B decides that the confirmation keepalive results infailure (step S55A), then the second OFS 2B notifies the third OFS 2C ofthe confirmation result (failure) using the data plane 5 (step S56A).

In the case of the confirmation result (failure), the third OFS 2Cdecides that the disorder is a disorder of the first OFC 3A itself andtransmits a disorder notification by flooding transmission (step S57A).Further, if the second OFS 2B serving as the sub representative OFS 13receives the disorder notification from the representative OFS 11, thenthe second OFS 2B notifies the OFS 2, to which the disorder notificationhas not been transmitted as yet, of the disorder notification. In otherwords, the second OFS 2B notifies the first OFS 2A of the disordernotification (step S58A). As a result, the third OFS 2C, fourth OFS 2Dand fifth OFS 2E as well as the second OFS 2B and first OFS 2A executeswitching operation of the OFC 3. In other words, the third OFS 2C,fourth OFS 2D and fifth OFS 2E as well as the second OFS 2B and firstOFS 2A switch the second OFC 3B to the primary OFC 12A and switch thefirst OFC 3A to the secondary OFC 12B.

Referring to FIG. 17, the third OFS 2C executes keepalive for the firstOFC 3A using the control plane 6 through the first SW 4A and the thirdSW 4C (step S61). Further, if the third OFS 2C detects a disorder of thefirst OFC 3A on the basis of a result of the keepalive (step S62), thenit notifies the second OFS 2B serving as the sub representative OFS 13of a confirmation request using the data plane 5 (step S63A).

If the second OFS 2B receives the confirmation request, then it executesconfirmation keepalive for the first OFC 3A using the control plane 6through the first SW 4A and the second SW 4B (step S64A). Further, ifthe second OFS 2B decides that the confirmation keepalive results insuccess (step S65A), then it notifies the third OFS 2C of theconformation result (success) using the data plane 5 (step S66A).

In the case of the confirmation result (success), the third OFS 2Cdecides that the disorder is not a disorder of the first OFC 3A itselfbut is link down on the control plane 6 and transmits a disordernotification by flooding transmission from output ports other than theoutput port to the second OFS 2B (step S67A). As a result, the third OFS2C transmits the disorder notification to the fourth OFS 2D and thefifth OFS 2E. The third OFS 2C, fourth OFS 2D and fifth OFS 2E executeswitching operation of the OFC 3. In particular, the third OFS 2C,fourth OFS 2D and fifth OFS 2E switch the second OFC 3B to the primaryOFC 12A and switch the first OFC 3A to the secondary OFC 12B.

If the second OFS 2B decides that the confirmation keepalive results insuccess, then it decides that the disorder is not a disorder of thefirst OFC 3A itself but is link down on the control plane 6. As aresult, the first OFS 2A and the second OFS 2B maintain the first OFC 3Aas the primary OFC 12A.

In the case of FIG. 17, since the disorder is not a disorder of thefirst OFC 3A itself but is link down between the first SW 4A and thethird SW 4C on the control plane 6, the confirmation keepalive executedby the sub representative OFS 13 is successful. Accordingly, the subrepresentative OFS 13 decides that the disorder is not a disorder of thefirst OFC 3A itself but is link down on the control plane 6 between thethird OFS 2C serving as the representative OFS 11 and the first OFC 3A.Then, since there is no influence on the coupling between the first andsecond OFSs 2A and 2B and the first OFC 3A, the sub representative OFS13 does not execute switching to the secondary OFC 12B and disordernotification to the first OFS 2A.

FIG. 18 is a flow chart illustrating an example of processing operationof the representative OFS 11 relating to a third disorder detectionprocess. The third disorder detection process depicted in FIG. 18 is aprocess for executing keepalive with the primary OFC 12A andtransmitting, when a disorder of the primary OFC 12A is detected, aconfirmation request to the sub representative OFS 13.

Referring to FIG. 18, the monitoring unit 34B in the representative OFS11 resets the failure time number for the Echo Reply (step S91) andtransmits an Echo Request for keepalive to the primary OFC 12A of theown apparatus using the control plane 6 (step S92). After thetransmission of the Echo Request, the detection unit 34C starts thereception waiting timer for the Echo Reply (step S93) and decideswhether or not an Echo Reply is received from the primary OFC 12A (stepS94). If an Echo Reply is received (Yes at step S94), then the detectionunit 34C decides that the primary OFC 12A is normal (step S95), therebyending the processing operation depicted in FIG. 18.

If an Echo Reply is not received from the primary OFC 12A (No at stepS94), then the detection unit 34C decides whether or not the receptionwaiting timer is up (step S96). If the reception waiting timer is up(Yes at step S96), then the detection unit 34C increments the failuretime number by +1 (step S97) and decides whether or not the failure timenumber reaches a given time number (step S98).

If the fail time number reaches the given time number (Yes at step S98),then the transmission unit 35B transmits a confirmation requestincluding the identifier of the disordered OFC 3 to the subrepresentative OFS 13 using the data plane 5 (step S99), thereby endingthe processing operation depicted in FIG. 18.

On the other hand, if the reception waiting timer is not up (No at stepS96), then the detection unit 34C advances the processing to step S94 inorder to decide whether or not an Echo Reply is received from theprimary OFC 12A. If the failure time number does not reach the giventime number (No at step S98), then the transmission unit 35B advancesthe processing to step S92 in order to transmit an Echo Request to theprimary OFC 12A.

The representative OFS 11 that executes the third disorder detectionprocess depicted in FIG. 18 notifies, when the failure time numberreaches the given time number, the sub representative OFS 13 of aconfirmation request. As a result, the representative OFS 11 issues aconfirmation request of a disorder of the primary OFC 12A to the subrepresentative OFS 13.

FIG. 19 is a flow chart illustrating an example of processing operationof the sub representative OFS 13 relating to a fourth disorder detectionprocess. The fourth disorder detection process depicted in FIG. 19 is aprocess for executing, when a confirmation request from therepresentative OFS 11 is detected, confirmation keepalive with theprimary OFC 12A.

Referring to FIG. 19, the reception unit 35C of the sub representativeOFS 13 decides whether or not a confirmation request is received usingthe data plane 5 (step S101). If a confirmation request is received (Yesat step S101), then the detection unit 34C in the sub representative OFS13 decides whether or not the OFC 3 of the confirmation request is theprimary OFC 12A of the own apparatus (step S102).

If the OFC 3 of the confirmation request is the primary OFC 12A of theown apparatus (Yes at step S102), then the monitoring unit 34B resetsthe failure time number for the Echo Reply (step S103). Further, themonitoring unit 34B transmits an Echo Request for confirmation keepaliveto the primary OFC 12A of the own apparatus using the control plane 6(step S104). After the transmission of the Echo Request, the detectionunit 34C starts the reception waiting timer (step S105) and decideswhether or not an Echo Reply is received from the primary OFC 12A (stepS106). If an Echo Reply is received (Yes at step S106), then thedetection unit 34C decides that the conformation keepalive results insuccess (step S107). When it is decided that the conformation keepaliveresults in success, then the transmission unit 35B notifies therepresentative OFS 11 of the confirmation result (success) using thedata plane 5 (step S108), thereby ending the processing operationdepicted in FIG. 19.

If an Echo Reply is not received from the primary OFC 12A (No at stepS106), then the detection unit 34C decides whether or not the receptionwaiting timer is up (step S109). If the reception waiting timer is up(Yes at step S109), then the detection unit 34C increments the failuretime number by +1 (step S110) and decides whether or not the failuretime number reaches a given time number (step S111).

If the failure time number reaches the given time number (Yes at stepS111), then the transmission unit 35B decides that the confirmationkeepalive results in failure (step S112). When it is decided that theconfirmation keepalive results in failure, the transmission unit 35Bnotifies the representative OFS 11 of the confirmation result (failure)using the data plane 5 (step S113), thereby ending the processingoperation depicted in FIG. 19.

On the other hand, if the reception waiting timer is not up (No at stepS109), then the detection unit 34C advances the processing to step S106in order to decide whether or not an Echo Reply is received from theprimary OFC 12A. If the failure time number does not reach the giventime number (No at step S111), then the monitoring unit 34B advances theprocessing to step S104 in order to transmit the Echo Request for theconfirmation keepalive to the primary OFC 12A again.

If the reception unit 35C does not receive a confirmation request (No atstep S101), then the processing operation depicted in FIG. 19 is ended.If the OFC 3 of the confirmation request is not the primary OFC 12A ofthe own apparatus (No at step S102), then the sub representative OFS 13ends processing operation depicted in FIG. 19.

If the sub representative OFS 13 that executes the fourth disorderdetection process depicted in FIG. 19 detects a confirmation requestfrom the representative OFS 11, then the sub representative OFS 13executes confirmation keepalive with the primary OFC 12A. If the subrepresentative OFS 13 receives an Echo Reply before the receptionwaiting timer becomes up, the sub representative OFS 13 decides that theconfirmation keepalive results in success. As a result, the subrepresentative OFS 13 recognizes that the disorder is not a disorder ofthe primary OFC 12A itself but is link down of the control plane 6.

If the failure time number reaches the given time number, then the subrepresentative OFS 13 decides that the confirmation keepalive results infailure. As a result, the sub representative OFS 13 confirms thedisorder occurrence of the primary OFC 12A itself.

Further, the sub representative OFS 13 notifies the representative OFS11 of the confirmation keepalive result as a confirmation result. As aresult, the representative OFS 11 recognizes the confirmation keepaliveresult on the basis of the confirmation result from the subrepresentative OFS 13.

FIG. 20 is a flow chart illustrating an example of processing operationof the representative OFS 11 relating to a confirmation responseprocess. The confirmation response process illustrated in FIG. 20 is aprocess for confirming a disorder of the primary OFC 12A on the basis ofa confirmation result from the sub representative OFS 13.

Referring to FIG. 20, the reception unit 35C in the representative OFS11 decides whether or not a confirmation result is received from the subrepresentative OFS 13 using the data plane 5 (step S121). If aconfirmation result is received (Yes at step S121), then the receptionunit 35C decides whether or not the confirmation result is “success”(step S122).

If the confirmation result is not “success” (No at step S122), then thetransmission unit 35B decides that the confirmation result is “failure”and transmits a disorder notification indicative of a disorder of theprimary OFC 12A by flooding transmission (step S123). Further, theswitching unit 35A executes switching operation of the OFC 3 (stepS124), thereby ending the processing operation illustrated in FIG. 20.In other words, the representative OFS 11 switches the second OFC 3B tothe primary OFC 12A and switches the first OFC 3A to the secondary OFC12B.

If the confirmation result is “success” (Yes at step S122), then thetransmission unit 35B transmits a disorder notification from outputports other than the port coupled to the sub representative OFS 13 (stepS125). Further, the switching unit 35A executes switching operation ofthe OFC 3 (step S124), thereby ending the processing operationillustrated in FIG. 20. In particular, the representative OFS 11 and thefourth OFS 2D and fifth OFS 2E of the ports coupled to therepresentative OFS 11 execute switching operation of the OFC 3 inresponse to the disorder notification. The representative OFS 11, fourthOFS 2D and fifth OFS 2E switch the second OFC 3B to the primary OFC 12Aand switch the first OFC 3A to the secondary OFC 12B.

If the reception unit 35C does not receive a confirmation result to theconfirmation request from the sub representative OFS 13 (No at stepS121), then the reception unit 35C ends the processing operationdepicted in FIG. 20.

The representative OFS 11 that executes the confirmation responseprocess depicted in FIG. 20 recognizes, if the confirmation result fromthe sub representative OFS 13 is success, that the disorder is not adisorder of the primary OFC 12A itself but is link down on the controlplane 6.

If the confirmation result from the sub representative OFS 13 isfailure, then the representative OFS 11 re-confirms that the disorder isa disorder of the primary OFC 12A itself and transmits a notification ofthe disorder of the primary OFC 12A by flooding transmission. As aresult, the representative OFS 11 notifies the neighboring OFSs 2 of thedisorder of the primary OFC 12A. Then, each of the OFSs 2 receives thedisorder notification and executes, if the disordered OFC 3 of thedisorder notification is the primary OFC 12A of the own apparatus,switching operation of the OFC. As a result, the OFC 3 that controls theown apparatus is recovered from the disorder.

It is to be noted that the representative OFS 11 in the embodimentsdescribed above increments the failure time number by +1 when thereception waiting timer for the Echo Reply becomes up and then decidesthat the primary OFC 12A is disordered when the failure time numberreaches the given time number. However, the representative OFS 11 maydecide that the primary OFC is in disorder when the reception waitingtimer for the Echo Reply becomes up without incrementing the failuretime number.

Although a case in which the representative OFS 11 transmits a disordernotification by flooding transmission is exemplified, the disordernotification may be transmitted otherwise to an OFS 2 or OFSs 2 set inadvance. For example, if the primary OFC 12A of the fifth OFS 2E isswitched not to the first OFC 3A but to the second OFC 3B, thentransmission of the notification message to the fifth OFS 2E isunnecessary. Accordingly, the third OFS 2C is set in advance such thatit transmits a notification message to two output ports coupled to thesecond OFS 2B and the fourth OFS 2D.

Also the transmission of a disorder notification of each OFS 2 is notlimited to flooding transmission, and a disorder notification may betransferred by explicitly setting output ports of a transfer destinationto the OFSs 2 in advance. For example, since a disorder notification hasbeen transferred from the second OFS 2B to the first OFS 2A, the fourthOFS 2D need not transfer the disorder notification to the first OFS 2A.Accordingly, an output port to the first OFS 2A is designated in orderto transfer the disorder notification only to the second OFS 2B.

The transmission period for transmitting an Echo Request for keepalivemay be set equal to the time-up time period of the reception waitingtimer for the Echo Reply and can be changed suitably. For example, ifthe transmission period and the time-up time period of the receptionwaiting timer are set equally to 30 milliseconds, then an Echo Requestmessage is transmitted in the period of 30 milliseconds, and it ismonitored whether or not an Echo Reply to each transmitted Echo Requestcan be received within 30 milliseconds by the representative OFS 11.Further, when it is desired to detect a reception failure of an EchoReply earlier, for example, the reception waiting timer for the EchoReply may be set to 10 milliseconds. In this case, if it is difficult toreceive an Echo Reply within 10 milliseconds after transmission of anEcho Request, then failure in reception is decided. Therefore, the timeperiod before an OFC disorder is detected is reduced. It is to be notedthat this can be applied not only to the representative OFS 11 but alsoto the sub representative OFS 13.

For example, it is assumed that, in the embodiments, link down occursbetween the first OFS 2A or second OFS 2B and the second SW 4B on thecontrol plane 6 or between the first SW 4A and the second SW 4B. In thiscase, one or both of the first OFS 2A and the second OFS 2B are disabledfor coupling to the first OFC 3A. Further, also a path for coupling tothe other secondary OFC 12B such as the second OFC 3B and so forthdisappears from the control plane 6. Therefore, manual recovery by anadministrator or the like from the disorder may be required.

For example, it is assumed that, in the embodiments describedhereinabove, link down occurs between the third SW 4C and the third OFS2C, fourth OFS 2D or fifth OFS 2E. In this case, any OFS 2 coupled tothe link that suffers from the disorder is disabled for coupling to thefirst OFC 3A. In this case, also it is disabled to couple to the othersecondary OFC 12B such as the second OFC 3B and so forth through thethird SW 4C in the control plane 6. Therefore, manual recovery by anadministrator or the like from the disorder may be required. It is to benoted that, if the link between the third OFS 2C serving as therepresentative OFS 11 and the third SW 4C is disordered, then the thirdOFS 2C comes to detect link down between the third OFS 2C and the thirdSW 4C before it is disabled to perform keepalive for the first OFC 3A.If the third OFS 2C detects that the disorder is not a disorder of thefirst OFC 3A itself but is link down of the control plane 6, then onlythe third OFS 2C itself is disabled for coupling to the first OFC 3A.Accordingly, the third OFS 2C decides that the disorder does not have aninfluence on the coupling between the neighboring first, second, fourthand fifth OFSs 2A, 2B, 2D and 2E and the first OFC 3A, and does nottransmit an OFC disorder detection notification from any output port.

The selection unit 45 in the embodiments described above selects, as therepresentative OFS 11, on the basis of the control topology information,the OFS 2 whose route cost is the lowest taking the hop number and thedistance on the control plane 6 to the primary OFC 12A intoconsideration. However, the selection unit 45 may select, as therepresentative OFS 11, for example, an OFS 2 whose identifier or addressis lowest in value or an OFS 2 that is located in the proximity of thecenter among all OFSs 2 on the data plane 5 on the basis of the datatopology information. Alternatively, the selection unit 45 may select anOFS 2 at random from within the control target OFS table 41C and selectthe selected OFS 2 as the representative OFS 11.

Further, the configuration elements of the components depicted in thefigures need not necessarily be configured physically in such a manneras depicted in the figures. In other words, the particular forms ofdisintegration or integration of the components are not limited to thosein the figures, but all or some of the components may be configured in afunctionally or physically disintegrated or integrated form in anarbitrary unit in response to various loads, situations in use and soforth.

Further, all or arbitrary ones of the various processing functionsperformed by the various apparatuses may be executed on a CPU, a digitalsignal processor (DSP), a field programmable gate array (FPGA) or thelike. Alternatively, all or arbitrary ones of the various processingfunctions may be executed on a program analyzed and executed by a CPU orthe like or on hardware by wired logic.

An area for storing various kinds of information may be configured froma read only memory (ROM) or a RAM such as, for example, a synchronousdynamic random access memory (SDRAM), a magnetoresistive random accessmemory (MRAM) or a non volatile random access memory (NVRAM).

Incidentally, the various processes described hereinabove in connectionwith the embodiments may be implemented by causing a processor such as aCPU in a computer to execute a program prepared in advance. Therefore,in the following, an example of an information processing apparatus thatexecutes a program having functions similar to those of the embodimentsdescribed above is described. FIG. 21 is an explanatory view depictingan example of a computer that executes a disorder detection program.

Referring to FIG. 21, a computer 200 that executes a disorder detectionprogram includes a communication unit 210, a hard disc drive (HDD) 220,a ROM 230, a RAM 240 and a CPU 250. The communication unit 210, HDD 220,ROM 230, RAM 240 and CPU 250 are coupled to each other by a bus 260. Thecommunication unit 210 couples for communication to a first network anda second network. The first network couples the communication unit 210to a plurality of switch apparatuses switching a route for data. Thesecond network couples to a control apparatus that controls theplurality of switch apparatuses.

The ROM 230 has stored therein in advance a disorder detection programthat demonstrates functions similar to those in the embodimentsdescribed hereinabove. The ROM 230 stores therein a decision program230A, a monitoring program 230B, a detection program 230C and anotification program 230D as disorder detection programs. It is to benoted that such disorder detection programs may be recorded not in theROM 230 but on a computer-readable recording medium by a drive notdepicted. Further, as the recording medium, a portable recording mediumsuch as, for example, a CD-ROM, a DVD disk or a USB memory, asemiconductor memory such as a flash memory or a like memory may beused.

The CPU 250 reads out the decision program 230A from the ROM 230 andcauses the decision program 230A to function as a decision process 240Aon the RAM 240. Further, the CPU 250 reads out the monitoring program230B from the ROM 230 and causes the monitoring program 230B to functionas a monitoring process 240B on the RAM 240. The CPU 250 reads out thedetection program 230C from the ROM 230 and causes the detection program230C to function as a detection process 240C on the RAM 240. The CPU 250reads out the notification program 230D from the ROM 230 and causes thenotification program 230D to function as a notification process 240D onthe RAM 240.

The CPU 250 decides whether or not the own apparatus is the first switchapparatus from among the plurality of switch apparatuses configured toswitch the route of data on the first network. Where the own apparatusis the first switch apparatus, the CPU 250 executes keepalive with thecontrol apparatus that controls the plurality of switch apparatusesthrough the second network different from the first network. The CPU 250detects a disorder of the control apparatus on the basis of a result ofmonitoring of the keepalive. If a disorder of the control apparatus isdetected, then the CPU 250 notifies the switch apparatus controlled bythe control apparatus of a disorder report through the first network. Asa result, the communication load on the second network and theprocessing burden on the control apparatus side when a disorder of thecontrol apparatus is detected is suppressed.

All examples and conditional language recited herein are intended forpedagogical purposes to aid the reader in understanding the inventionand the concepts contributed by the inventor to furthering the art, andare to be construed as being without limitation to such specificallyrecited examples and conditions, nor does the organization of suchexamples in the specification relate to a showing of the superiority andinferiority of the invention. Although the embodiment of the presentinvention has been described in detail, it should be understood that thevarious changes, substitutions, and alterations could be made heretowithout departing from the spirit and scope of the invention.

What is claimed is:
 1. A system comprising: a first controller; a secondcontroller; and a plurality of switch devices including a first switchdevice and a second switch device, the plurality of switch devices beingconfigured to receive a packet and store a flow table which indicates amethod of handling a process of the received packet, wherein the firstcontroller informs a first content of the flow table to the plurality ofswitch devices, the first switch device detects a communication errorbetween the first switch device and the first controller, the firstswitch device informs the second switch device of the communicationerror between the first switch device and the first controller, and thesecond switch device changes a connecting destination from the firstcontroller to the second controller.
 2. The system according to claim 1,wherein the first controller is a first Openflow Controller, the secondcontroller is a second Openflow Controller, and the plurality of switchdevices are Openflow Switches.
 3. The system according to claim 1,wherein the first switch device detects the communication error byexecuting a first keepalive at a regular interval.
 4. The systemaccording to claim 3, wherein the first switch device executes the firstkeepalive on behalf of the plurality of switch devices, and the secondswitch device does not execute the first keepalive.
 5. The systemaccording to claim 3, wherein when the first switch device detects thecommunication error between the first switch device and the firstcontroller by executing the first keepalive using a first network, thefirst switch device informs the second switch device of thecommunication error using a second network.
 6. The system according toclaim 3, wherein the plurality of switch devices include a third switchdevice, the first switch device informs the third switch device of thecommunication error between the first switch device and the firstcontroller, and the third switch device executes a second keepalive inorder to detect a communication error between the third switch deviceand the first controller.
 7. The system according to claim 6, whereinwhen the third switch device detects the communication error between thethird switch device and the first controller, the third switch deviceinforms a fourth switch device included in the plurality of switchdevices.
 8. The system according to claim 1, wherein the secondcontroller informs a second content of the flow table to the secondswitch device, and the second switch handles the received packet basedon the second content.
 9. A switch device, comprising: a memory; and aprocessor coupled to the memory and configured to receive a packet,receive, from a controller, a content of a flow table which indicates amethod of handling a process of the received packet, detect acommunication error between the switch device and the controller, andinform the communication error to another switch device.
 10. The switchdevice according to claim 9, wherein the controller is an OpenflowController, and the switch device is an Openflow Switch.
 11. The switchdevice according to claim 9, wherein the switch device detects thecommunication error by executing a keepalive at a regular interval. 12.The switch device according to claim 11, wherein the switch deviceexecutes the keepalive on behalf of a plurality of switch devicesincluding the switch device and the another switch device, and theanother switch device does not execute the keepalive.
 13. The switchdevice according to claim 11, wherein when the switch device detects thecommunication error by executing the keepalive using a first network,the switch device informs the another switch device of the communicationerror using a second network.
 14. A method of controlling a plurality ofswitch devices, the method comprising: storing, in a first switch deviceand in a second switch device by a first controller, a flow tableincluding a first content which indicates a method of handling processof a packet; detecting, by the first switch device, a communicationerror between the first switch device and the first controller;informing, by the first switch device, the communication error betweenthe first switch device and the first controller to the second switchdevice; changing, by the first switch device, a first connection betweenthe second switch device and the first controller to a second connectionbetween the second switch device and a second controller; and setting,by the second controller, in the first switch device and the secondswitch device, the flow table including a second content.
 15. The methodaccording to claim 14, wherein the first controller is a first OpenflowController, the second controller is a second Openflow Controller, andthe plurality of switch devices are Openflow Switches.
 16. The methodaccording to claim 14, wherein the detecting includes executing a firstkeepalive at a regular interval.
 17. The method according to claim 16,wherein the executing of the first keepalive is executed by the firstswitch device on behalf of the plurality of switch devices, and themethod further comprising: not executing, by the second switch device,the first keepalive.
 18. The method according to claim 16, wherein theexecuting of the first keepalive is executed using a first network, andthe method further comprising: when the detecting detects thecommunication error between the first switch device and the firstcontroller, informing, by the first switch device, the second switchdevice of the communication error using a second network.
 19. The methodaccording to claim 16, further comprising: receiving, by a third switchdevice included in the plurality of switch devices, a notification ofthe communication error between the third switch and the firstcontroller; and executing, by the third switch device, a secondkeepalive in order to detect the communication error between the thirdswitch and the first controller.
 20. The method according to claim 19,further comprising: informing, by the third switch device, a fourthswitch device included in the plurality of switch devices of thecommunication error between the third switch and the first controllerwhen detected by the third switch device.